package step

import _interface "adam2/internal/quant/interface"

// 更新quant_account步骤
type UpdateQuantAccountAfterSellStep struct {
	sellDate                    *_interface.SellDate
	updateQuantAccountAfterSell *_interface.UpdateQuantAccount
}

// 初始化
func (u *UpdateQuantAccountAfterSellStep) Init(sellDate *_interface.SellDate, updateQuantAccountAfterSell *_interface.UpdateQuantAccount) {
	u.sellDate = sellDate
	u.updateQuantAccountAfterSell = updateQuantAccountAfterSell
}

// 在卖出之后更新quant_account
func (u *UpdateQuantAccountAfterSellStep) UpdateQuantAccountAfterSell(transactionDate string) {
	if (*u.sellDate).IsSellDate(transactionDate) {
		(*u.updateQuantAccountAfterSell).Exec(transactionDate)
	}
}
